
// import {polygonFeatureStyle} from './../../common'
import Rain from './../../../page/rain/rain'
import DataList from './../../../page/common/DataList'
import DateDataLineChart from './../../../page/common/DateDataLineChart'
import GateHistoryData from './../../../page/common/ChartHistoryData'
import RainData from './../../../page/common/RainData'
import Vue from 'vue'
import {pointFeatureStyle, initCenter} from './../../common'
/**
 * ###################
 * #######雨量等高线###
 * ###################
 */
const rainfall = {
  noInteraction: false,
  // 名称
  name: '雨量等高线',
  // 查询组件
  component: Rain,

  isquery: true,
  // primaryKey: 'STCD',
  // 图层
  layers: {
    '0-10': {
      name: '0-10',
      isShow: false,
      // 指定图层层级
      'z-index': 1,
      // 图例图标
      'icon-svg': '/static/icon/wushui-01.png',
      // 数据源
      primaryKey: 'STCD',
      src: {
        // 地址
        url: '/ssjc/Rain/rainLives?isGeo_=true&typeKey_=rain&longitudeKey_=lng&latitudeKey_=lat',
        // 参数
        param (BEGINDATE, ENDDATE) {
          if (BEGINDATE !== '' && BEGINDATE !== undefined) {
            return {
              SR2: '10',
              SR1: '0',
              BEGINDATE: BEGINDATE,
              // 结束日期1天前
              ENDDATE: ENDDATE
            }
          } else {
            let now = new Date()
            let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

            return {
              SR2: '10',
              SR1: '0',
              BEGINDATE: dateStr + ' 00:00:00',
              // 结束日期1天前
              ENDDATE: dateStr + ' 23:59:59'
            }
          }
        }
      },
      tableSrc: {
        url: '/ssjc/Rain/rainLives',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '10',
            SR1: '0',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      // tableSrc: `/ssjc/Rain/rainLivePage`,
      tableQuerySrc: '/ssjc/Rain/rainLiveQuery',
      // 图层样式
      // featureStyle: function (feature, resolution) {
      //   return polygonFeatureStyle('0-10毫米降水区', 'rgba(125,198,255,0.4)', 'rgba(125,198,255,1)', feature, resolution)
      // }
      triggeCallback: function (eventName, isShow) {
        // 当事件为图层可见状态发生变化时
        if (eventName === 'layer-visible-change') {
          const {$vuexStore: vuex} = Vue.prototype
          if (isShow) {
            vuex.dispatch('setView', initCenter)
          }
        }
      },
      // 做为要素在地图上显示的样式
      featureStyle: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 做为要素在地图上被激活的样式
      featureStyle_H: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-H-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 详情标签页
      detailTabs: {
        dataList: {
          // 名称
          name: '当天数据',
          // 组件
          component: DataList,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistoryPage',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  if (cellValue) {
                    // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
                    return new Date(cellValue).format('yyyy-MM-dd hh:mm:ss')
                  }
                  return ''
                }
              },
              // 瞬时流速
              {
                label: '雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        },
        dataLineChart: {
          // 名称
          name: '实时图表',
          // 组件
          component: DateDataLineChart,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistory',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM'
          }
        },
        /**
     * 历史信息
     */
        history: {
          // 名称
          name: '历史数据',
          // 组件
          component: GateHistoryData,
          // 该组件需要的数据接口
          src: {
            // 按年查询日历史数据（天单位）
            yearQuery: {
              url: '/ssjc/Rain/rainLiveYearQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' + stcd + '&YEAR=' + choseYear
              }
            },
            // 按照日期范围查询日历史数据（天单位）
            dateScope: {
              url: '/ssjc/Rain/rainDateQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope,
                // 查询类型：1为年查询
                type}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' +
              stcd +
              '&BEGINDATE=' +
              dateScope[0].format('yyyy-MM-dd hh:mm:ss') +
              '&ENDDATE=' +
              dateScope[1].format('yyyy-MM-dd hh:mm:ss')
              }
            }
          },
          // 附加数据
          addition: {
            // 给历史页面做导出时的标题
            stationName: '站名',
            // 给历史页面做导出时的属性名
            charStationName: 'STNM',
            // 给历史页面做导出时的标题
            chartDate: '监测时间',
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM',
            // 图表标题
            chartTitle: '历史数据',
            // 图表点名称
            chartDataName: '雨量（毫米）',
            // 要在历史tab中显示的组件id
            historyTabs: [
              'dataLineChart',
              'dataList',
              'picture'
            ]
          }
        },
        rainData: {
          // 名称
          name: '雨量',
          // 组件
          component: RainData,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainSectionSrByStcd',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return new Date().format('yyyy-MM-dd')
                }
              },
              // 瞬时流速
              {
                label: '3小时雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '6小时雨量',
                prop: 'SR1',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '12小时雨量',
                prop: 'SR2',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        }
      },
      // 列表格式
      tableFormat: [
        // 站名
        {
          // 显示标题
          label: '站名',
          // 属性键
          prop: 'STNM',
          // 宽度
          width: 120,
          // 是否需要搜索
          isSearch: true,
          // 格式化函数
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        },
        // 时间
        {
          label: '时间',
          prop: 'YMDHM',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
              return new Date(cellValue).format('MM-dd hh:mm')
            }
            return ''
          }
        },
        // 实时水位
        {
          label: '实时雨量',
          prop: 'SR',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        }
      ]

    },
    '10-20': {
      name: '10-20',
      isShow: false,
      // 指定图层层级
      'z-index': 1,
      // 图例图标
      'icon-svg': '/static/icon/wushui-01.png',
      primaryKey: 'STCD',
      // 数据源
      src: {
        url: '/ssjc/Rain/rainLives?isGeo_=true&typeKey_=rain&longitudeKey_=lng&latitudeKey_=lat',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '20',
            SR1: '10',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      tableSrc: {
        url: '/ssjc/Rain/rainLives',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '20',
            SR1: '10',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      // tableSrc: `/ssjc/Rain/rainLivePage`,
      tableQuerySrc: '/ssjc/Rain/rainLiveQuery',
      triggeCallback: function (eventName, isShow) {
        // 当事件为图层可见状态发生变化时
        if (eventName === 'layer-visible-change') {
          const {$vuexStore: vuex} = Vue.prototype
          if (isShow) {
            vuex.dispatch('setView', initCenter)
          }
        }
      },
      // 做为要素在地图上显示的样式
      featureStyle: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 做为要素在地图上被激活的样式
      featureStyle_H: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-H-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 详情标签页
      detailTabs: {
        dataList: {
          // 名称
          name: '当天数据',
          // 组件
          component: DataList,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistoryPage',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  if (cellValue) {
                    // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
                    return new Date(cellValue).format('yyyy-MM-dd hh:mm:ss')
                  }
                  return ''
                }
              },
              // 瞬时流速
              {
                label: '雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        },
        dataLineChart: {
          // 名称
          name: '实时图表',
          // 组件
          component: DateDataLineChart,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistory',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM'
          }
        },
        /**
     * 历史信息
     */
        history: {
          // 名称
          name: '历史数据',
          // 组件
          component: GateHistoryData,
          // 该组件需要的数据接口
          src: {
            // 按年查询日历史数据（天单位）
            yearQuery: {
              url: '/ssjc/Rain/rainLiveYearQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' + stcd + '&YEAR=' + choseYear
              }
            },
            // 按照日期范围查询日历史数据（天单位）
            dateScope: {
              url: '/ssjc/Rain/rainDateQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope,
                // 查询类型：1为年查询
                type}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' +
              stcd +
              '&BEGINDATE=' +
              dateScope[0].format('yyyy-MM-dd hh:mm:ss') +
              '&ENDDATE=' +
              dateScope[1].format('yyyy-MM-dd hh:mm:ss')
              }
            }
          },
          // 附加数据
          addition: {
            // 给历史页面做导出时的标题
            stationName: '站名',
            // 给历史页面做导出时的属性名
            charStationName: 'STNM',
            // 给历史页面做导出时的标题
            chartDate: '监测时间',
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM',
            // 图表标题
            chartTitle: '历史数据',
            // 图表点名称
            chartDataName: '雨量（毫米）',
            // 要在历史tab中显示的组件id
            historyTabs: [
              'dataLineChart',
              'dataList',
              'picture'
            ]
          }
        },
        rainData: {
          // 名称
          name: '雨量',
          // 组件
          component: RainData,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainSectionSrByStcd',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return new Date().format('yyyy-MM-dd')
                }
              },
              // 瞬时流速
              {
                label: '3小时雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '6小时雨量',
                prop: 'SR1',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '12小时雨量',
                prop: 'SR2',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        }
      },
      // 列表格式
      tableFormat: [
        // 站名
        {
          // 显示标题
          label: '站名',
          // 属性键
          prop: 'STNM',
          // 宽度
          width: 120,
          // 是否需要搜索
          isSearch: true,
          // 格式化函数
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        },
        // 时间
        {
          label: '时间',
          prop: 'YMDHM',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
              return new Date(cellValue).format('MM-dd hh:mm')
            }
            return ''
          }
        },
        // 实时水位
        {
          label: '实时雨量',
          prop: 'SR',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        }
      ]

    },
    '20-30': {
      name: '20-30',
      isShow: false,
      // 指定图层层级
      'z-index': 1,
      // 图例图标
      'icon-svg': '/static/icon/wushui-01.png',
      primaryKey: 'STCD',
      // 数据源
      src: {
        url: '/ssjc/Rain/rainLives?isGeo_=true&typeKey_=rain&longitudeKey_=lng&latitudeKey_=lat',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '30',
            SR1: '20',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      tableSrc: {
        url: '/ssjc/Rain/rainLives',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '30',
            SR1: '20',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      // tableSrc: `/ssjc/Rain/rainLivePage`,
      tableQuerySrc: '/ssjc/Rain/rainLiveQuery',
      triggeCallback: function (eventName, isShow) {
        // 当事件为图层可见状态发生变化时
        if (eventName === 'layer-visible-change') {
          const {$vuexStore: vuex} = Vue.prototype
          if (isShow) {
            vuex.dispatch('setView', initCenter)
          }
        }
      },
      // 做为要素在地图上显示的样式
      featureStyle: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 做为要素在地图上被激活的样式
      featureStyle_H: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-H-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 详情标签页
      detailTabs: {
        dataList: {
          // 名称
          name: '当天数据',
          // 组件
          component: DataList,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistoryPage',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  if (cellValue) {
                    // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
                    return new Date(cellValue).format('yyyy-MM-dd hh:mm:ss')
                  }
                  return ''
                }
              },
              // 瞬时流速
              {
                label: '雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        },
        dataLineChart: {
          // 名称
          name: '实时图表',
          // 组件
          component: DateDataLineChart,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistory',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM'
          }
        },
        /**
     * 历史信息
     */
        history: {
          // 名称
          name: '历史数据',
          // 组件
          component: GateHistoryData,
          // 该组件需要的数据接口
          src: {
            // 按年查询日历史数据（天单位）
            yearQuery: {
              url: '/ssjc/Rain/rainLiveYearQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' + stcd + '&YEAR=' + choseYear
              }
            },
            // 按照日期范围查询日历史数据（天单位）
            dateScope: {
              url: '/ssjc/Rain/rainDateQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope,
                // 查询类型：1为年查询
                type}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' +
              stcd +
              '&BEGINDATE=' +
              dateScope[0].format('yyyy-MM-dd hh:mm:ss') +
              '&ENDDATE=' +
              dateScope[1].format('yyyy-MM-dd hh:mm:ss')
              }
            }
          },
          // 附加数据
          addition: {
            // 给历史页面做导出时的标题
            stationName: '站名',
            // 给历史页面做导出时的属性名
            charStationName: 'STNM',
            // 给历史页面做导出时的标题
            chartDate: '监测时间',
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM',
            // 图表标题
            chartTitle: '历史数据',
            // 图表点名称
            chartDataName: '雨量（毫米）',
            // 要在历史tab中显示的组件id
            historyTabs: [
              'dataLineChart',
              'dataList',
              'picture'
            ]
          }
        },
        rainData: {
          // 名称
          name: '雨量',
          // 组件
          component: RainData,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainSectionSrByStcd',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return new Date().format('yyyy-MM-dd')
                }
              },
              // 瞬时流速
              {
                label: '3小时雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '6小时雨量',
                prop: 'SR1',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '12小时雨量',
                prop: 'SR2',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        }
      },
      // 列表格式
      tableFormat: [
        // 站名
        {
          // 显示标题
          label: '站名',
          // 属性键
          prop: 'STNM',
          // 宽度
          width: 120,
          // 是否需要搜索
          isSearch: true,
          // 格式化函数
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        },
        // 时间
        {
          label: '时间',
          prop: 'YMDHM',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
              return new Date(cellValue).format('MM-dd hh:mm')
            }
            return ''
          }
        },
        // 实时水位
        {
          label: '实时雨量',
          prop: 'SR',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        }
      ]

    },
    '30-40': {
      name: '30-40',
      isShow: false,
      // 指定图层层级
      'z-index': 1,
      // 图例图标
      'icon-svg': '/static/icon/wushui-01.png',
      primaryKey: 'STCD',
      // 数据源
      src: {
        url: '/ssjc/Rain/rainLives?isGeo_=true&typeKey_=rain&longitudeKey_=lng&latitudeKey_=lat',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '40',
            SR1: '30',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      tableSrc: {
        url: '/ssjc/Rain/rainLives',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '40',
            SR1: '30',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      // tableSrc: `/ssjc/Rain/rainLivePage`,
      tableQuerySrc: '/ssjc/Rain/rainLiveQuery',
      triggeCallback: function (eventName, isShow) {
        // 当事件为图层可见状态发生变化时
        if (eventName === 'layer-visible-change') {
          const {$vuexStore: vuex} = Vue.prototype
          if (isShow) {
            vuex.dispatch('setView', initCenter)
          }
        }
      },
      // 做为要素在地图上显示的样式
      featureStyle: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 做为要素在地图上被激活的样式
      featureStyle_H: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-H-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 详情标签页
      detailTabs: {
        dataList: {
          // 名称
          name: '当天数据',
          // 组件
          component: DataList,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistoryPage',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  if (cellValue) {
                    // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
                    return new Date(cellValue).format('yyyy-MM-dd hh:mm:ss')
                  }
                  return ''
                }
              },
              // 瞬时流速
              {
                label: '雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        },
        dataLineChart: {
          // 名称
          name: '实时图表',
          // 组件
          component: DateDataLineChart,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistory',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM'
          }
        },
        /**
     * 历史信息
     */
        history: {
          // 名称
          name: '历史数据',
          // 组件
          component: GateHistoryData,
          // 该组件需要的数据接口
          src: {
            // 按年查询日历史数据（天单位）
            yearQuery: {
              url: '/ssjc/Rain/rainLiveYearQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' + stcd + '&YEAR=' + choseYear
              }
            },
            // 按照日期范围查询日历史数据（天单位）
            dateScope: {
              url: '/ssjc/Rain/rainDateQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope,
                // 查询类型：1为年查询
                type}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' +
              stcd +
              '&BEGINDATE=' +
              dateScope[0].format('yyyy-MM-dd hh:mm:ss') +
              '&ENDDATE=' +
              dateScope[1].format('yyyy-MM-dd hh:mm:ss')
              }
            }
          },
          // 附加数据
          addition: {
            // 给历史页面做导出时的标题
            stationName: '站名',
            // 给历史页面做导出时的属性名
            charStationName: 'STNM',
            // 给历史页面做导出时的标题
            chartDate: '监测时间',
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM',
            // 图表标题
            chartTitle: '历史数据',
            // 图表点名称
            chartDataName: '雨量（毫米）',
            // 要在历史tab中显示的组件id
            historyTabs: [
              'dataLineChart',
              'dataList',
              'picture'
            ]
          }
        },
        rainData: {
          // 名称
          name: '雨量',
          // 组件
          component: RainData,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainSectionSrByStcd',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return new Date().format('yyyy-MM-dd')
                }
              },
              // 瞬时流速
              {
                label: '3小时雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '6小时雨量',
                prop: 'SR1',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '12小时雨量',
                prop: 'SR2',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        }
      },
      // 列表格式
      tableFormat: [
        // 站名
        {
          // 显示标题
          label: '站名',
          // 属性键
          prop: 'STNM',
          // 宽度
          width: 120,
          // 是否需要搜索
          isSearch: true,
          // 格式化函数
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        },
        // 时间
        {
          label: '时间',
          prop: 'YMDHM',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
              return new Date(cellValue).format('MM-dd hh:mm')
            }
            return ''
          }
        },
        // 实时水位
        {
          label: '实时雨量',
          prop: 'SR',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        }
      ]

    },
    '40-50': {
      name: '40-50',
      isShow: false,
      // 指定图层层级
      'z-index': 1,
      // 图例图标
      'icon-svg': '/static/icon/wushui-01.png',
      primaryKey: 'STCD',
      // 数据源
      src: {
        url: '/ssjc/Rain/rainLives?isGeo_=true&typeKey_=rain&longitudeKey_=lng&latitudeKey_=lat',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '50',
            SR1: '40',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      tableSrc: {
        url: '/ssjc/Rain/rainLives',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '50',
            SR1: '40',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      // tableSrc: `/ssjc/Rain/rainLivePage`,
      tableQuerySrc: '/ssjc/Rain/rainLiveQuery',
      triggeCallback: function (eventName, isShow) {
        // 当事件为图层可见状态发生变化时
        if (eventName === 'layer-visible-change') {
          const {$vuexStore: vuex} = Vue.prototype
          if (isShow) {
            vuex.dispatch('setView', initCenter)
          }
        }
      },
      // 做为要素在地图上显示的样式
      featureStyle: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 做为要素在地图上被激活的样式
      featureStyle_H: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-H-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 详情标签页
      detailTabs: {
        dataList: {
          // 名称
          name: '当天数据',
          // 组件
          component: DataList,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistoryPage',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  if (cellValue) {
                    // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
                    return new Date(cellValue).format('yyyy-MM-dd hh:mm:ss')
                  }
                  return ''
                }
              },
              // 瞬时流速
              {
                label: '雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        },
        dataLineChart: {
          // 名称
          name: '实时图表',
          // 组件
          component: DateDataLineChart,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistory',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM'
          }
        },
        /**
     * 历史信息
     */
        history: {
          // 名称
          name: '历史数据',
          // 组件
          component: GateHistoryData,
          // 该组件需要的数据接口
          src: {
            // 按年查询日历史数据（天单位）
            yearQuery: {
              url: '/ssjc/Rain/rainLiveYearQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' + stcd + '&YEAR=' + choseYear
              }
            },
            // 按照日期范围查询日历史数据（天单位）
            dateScope: {
              url: '/ssjc/Rain/rainDateQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope,
                // 查询类型：1为年查询
                type}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' +
              stcd +
              '&BEGINDATE=' +
              dateScope[0].format('yyyy-MM-dd hh:mm:ss') +
              '&ENDDATE=' +
              dateScope[1].format('yyyy-MM-dd hh:mm:ss')
              }
            }
          },
          // 附加数据
          addition: {
            // 给历史页面做导出时的标题
            stationName: '站名',
            // 给历史页面做导出时的属性名
            charStationName: 'STNM',
            // 给历史页面做导出时的标题
            chartDate: '监测时间',
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM',
            // 图表标题
            chartTitle: '历史数据',
            // 图表点名称
            chartDataName: '雨量（毫米）',
            // 要在历史tab中显示的组件id
            historyTabs: [
              'dataLineChart',
              'dataList',
              'picture'
            ]
          }
        },
        rainData: {
          // 名称
          name: '雨量',
          // 组件
          component: RainData,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainSectionSrByStcd',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return new Date().format('yyyy-MM-dd')
                }
              },
              // 瞬时流速
              {
                label: '3小时雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '6小时雨量',
                prop: 'SR1',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '12小时雨量',
                prop: 'SR2',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        }
      },
      // 列表格式
      tableFormat: [
        // 站名
        {
          // 显示标题
          label: '站名',
          // 属性键
          prop: 'STNM',
          // 宽度
          width: 120,
          // 是否需要搜索
          isSearch: true,
          // 格式化函数
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        },
        // 时间
        {
          label: '时间',
          prop: 'YMDHM',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
              return new Date(cellValue).format('MM-dd hh:mm')
            }
            return ''
          }
        },
        // 实时水位
        {
          label: '实时雨量',
          prop: 'SR',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        }
      ]

    },
    '50以上': {
      name: '50以上',
      isShow: false,
      // 指定图层层级
      'z-index': 1,
      // 图例图标
      'icon-svg': '/static/icon/wushui-01.png',
      primaryKey: 'STCD',
      // 数据源
      src: {
        url: '/ssjc/Rain/rainLives?isGeo_=true&typeKey_=rain&longitudeKey_=lng&latitudeKey_=lat',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '500',
            SR1: '50',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      tableSrc: {
        url: '/ssjc/Rain/rainLives',
        // 参数
        param () {
          let now = new Date()
          let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()

          return {
            SR2: '500',
            SR1: '50',
            BEGINDATE: dateStr + ' 00:00:00',
            // 结束日期1天前
            ENDDATE: dateStr + ' 23:59:59'
          }
        }
      },
      // tableSrc: `/ssjc/Rain/rainLivePage`,
      tableQuerySrc: '/ssjc/Rain/rainLiveQuery',
      triggeCallback: function (eventName, isShow) {
        // 当事件为图层可见状态发生变化时
        if (eventName === 'layer-visible-change') {
          const {$vuexStore: vuex} = Vue.prototype
          if (isShow) {
            vuex.dispatch('setView', initCenter)
          }
        }
      },
      // 做为要素在地图上显示的样式
      featureStyle: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 做为要素在地图上被激活的样式
      featureStyle_H: function (feature, resolution) {
        let les = ''
        if (feature.get('sr') === '0') {
          les = '0毫米'
        } else if (typeof (feature.get('sr')) !== 'undefined') {
          les = feature.get('sr') + '毫米'
        }
        return pointFeatureStyle(
          '/static/icon/yuliang-H-01.png',
          feature.get('stnm') + '  ' + les,
          feature,
          resolution
        )
      },
      // 详情标签页
      detailTabs: {
        dataList: {
          // 名称
          name: '当天数据',
          // 组件
          component: DataList,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistoryPage',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  if (cellValue) {
                    // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
                    return new Date(cellValue).format('yyyy-MM-dd hh:mm:ss')
                  }
                  return ''
                }
              },
              // 瞬时流速
              {
                label: '雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        },
        dataLineChart: {
          // 名称
          name: '实时图表',
          // 组件
          component: DateDataLineChart,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainHistory',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM'
          }
        },
        /**
     * 历史信息
     */
        history: {
          // 名称
          name: '历史数据',
          // 组件
          component: GateHistoryData,
          // 该组件需要的数据接口
          src: {
            // 按年查询日历史数据（天单位）
            yearQuery: {
              url: '/ssjc/Rain/rainLiveYearQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' + stcd + '&YEAR=' + choseYear
              }
            },
            // 按照日期范围查询日历史数据（天单位）
            dateScope: {
              url: '/ssjc/Rain/rainDateQuery',
              param: ({
                // 当前处理站数据
                row,
                // 选中年
                choseYear,
                // 时间范围
                dateScope,
                // 查询类型：1为年查询
                type}) => {
                let stcd = ''
                if (row['STCD']) {
                  stcd = row['STCD']
                } else {
                  stcd = row['stcd']
                }
                return 'STCD=' +
              stcd +
              '&BEGINDATE=' +
              dateScope[0].format('yyyy-MM-dd hh:mm:ss') +
              '&ENDDATE=' +
              dateScope[1].format('yyyy-MM-dd hh:mm:ss')
              }
            }
          },
          // 附加数据
          addition: {
            // 给历史页面做导出时的标题
            stationName: '站名',
            // 给历史页面做导出时的属性名
            charStationName: 'STNM',
            // 给历史页面做导出时的标题
            chartDate: '监测时间',
            // 主键
            primaryKey: 'STCD',
            // 展示数据的键
            showKey: 'SR',
            // 时间的键
            dateKey: 'YMDHM',
            // 展示数据的键
            chartShowKey: 'SR',
            // 时间的键
            chartDateKey: 'YMDHM',
            // 图表标题
            chartTitle: '历史数据',
            // 图表点名称
            chartDataName: '雨量（毫米）',
            // 要在历史tab中显示的组件id
            historyTabs: [
              'dataLineChart',
              'dataList',
              'picture'
            ]
          }
        },
        rainData: {
          // 名称
          name: '雨量',
          // 组件
          component: RainData,
          // 该组件需要的数据接口--按照时间范围查询历史数据
          src: {
            url: '/ssjc/Rain/rainSectionSrByStcd',
            param: ({row, date}) => {
              let now = typeof date === 'string' ? new Date(date) : new Date()
              let dateStr = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate()
              let stcd = ''
              if (row['STCD']) {
                stcd = row['STCD']
              } else {
                stcd = row['stcd']
              }
              return {
                STCD: stcd,
                BEGINDATE: dateStr + ' 00:00:00',
                // 结束日期1天前
                ENDDATE: dateStr + ' 23:59:59'
              }
            }
          },
          // 附加数据
          addition: {
            // 展示数据的键
            tableFormat: [
              // 时间
              {
                label: '监测时间',
                prop: 'YMDHM',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return new Date().format('yyyy-MM-dd')
                }
              },
              // 瞬时流速
              {
                label: '3小时雨量',
                prop: 'SR',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '6小时雨量',
                prop: 'SR1',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              },
              {
                label: '12小时雨量',
                prop: 'SR2',
                // width: 200,
                isSearch: true,
                formatter: function (row, column, cellValue, index) {
                  return cellValue
                }
              }
            ]
          }
        }
      },
      // 列表格式
      tableFormat: [
        // 站名
        {
          // 显示标题
          label: '站名',
          // 属性键
          prop: 'STNM',
          // 宽度
          width: 120,
          // 是否需要搜索
          isSearch: true,
          // 格式化函数
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        },
        // 时间
        {
          label: '时间',
          prop: 'YMDHM',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              // 'q+': Math.floor((date.getMonth() + 3) / 3), //季度yyyy-MM-dd hh:mm:ss
              return new Date(cellValue).format('MM-dd hh:mm')
            }
            return ''
          }
        },
        // 实时水位
        {
          label: '实时雨量',
          prop: 'SR',
          width: 120,
          isSearch: true,
          formatter: function (row, column, cellValue, index) {
            if (cellValue) {
              return cellValue
            } else {
              return '--'
            }
          }
        }
      ]

    }
  }
}
export default rainfall
